Skip to content

render cadModel strings with Footprinter - #2900

Draft
seveibar wants to merge 2 commits into
mainfrom
agent/cad-model-footprinter-string
Draft

render cadModel strings with Footprinter#2900
seveibar wants to merge 2 commits into
mainfrom
agent/cad-model-footprinter-string

Conversation

@seveibar

@seveibar seveibar commented Jul 28, 2026

Copy link
Copy Markdown
Contributor

Summary

  • interpret a string cadModel as a Footprinter model string and emit it on cad_component.footprinter_string
  • keep the CAD model independent of the component's PCB footprint
  • make an explicit Footprinter CAD string override a model supplied by a footprint resolver or parts-engine flow
  • reject URL, static-asset, and library-reference strings with a clear error
  • add behavior and Simple 3D snapshot coverage using a custom JSX PCB footprint with cadModel="soic8"

Depends on tscircuit/props#762 for the public prop parser and type contract.

Contract

<chip
  name="U1"
  cadModel="soic8"
>
  <footprint>
    {/* Custom PCB geometry */}
  </footprint>
</chip>

"soic8" describes only the procedural CAD model. It does not need to match or derive from the component's PCB footprint. Omitted cadModel behavior remains unchanged, and cadModel={null} still disables CAD output.

Validation

  • bun test — 1,273 passed, 31 skipped, 0 failed (with the props PR linked)
  • bunx tsc --noEmit
  • bun run build
  • bunx biome format --write on changed TypeScript files

@vercel

vercel Bot commented Jul 28, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
tscircuit-core-benchmarks Ready Ready Preview, Comment Jul 28, 2026 6:47pm

Request Review

@seveibar seveibar changed the title add footprinter_string cadModel rendering render cadModel strings with Footprinter Jul 28, 2026
@github-actions

Copy link
Copy Markdown

This PR has been automatically marked as stale because it has had no recent activity. It will be closed if no further activity occurs.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant